CloudFormationが使えなかったのでCloudShellから複数のIAMユーザーを作成してみる
はじめに
今回はCloudShellを立ち上げて、AWS CLIで複数のユーザーをまとめて作成する方法を記事にしていきたいと思います。
今回作成するIAMユーザーは次のような想定をしています。
- コンソールログインあり
- パスワードは作成者が管理
CloudFormationが使用できない、でもIAMユーザーをたくさん作りたいからコンソール画面では面倒。
そんな時の選択肢の一つとして今回の方法を試してみてください。
ユーザー情報のファイル作成
まずは今回作成するIAMユーザーのユーザー名とパスワードが書かれたcsvファイルを準備します。
こちらはサンプルなので、そのまま使わないように注意しましょう。
ファイル名は「users.csv」です。
demo_user1,123456Aa! demo_user2,123456Bb! demo_user3,123456Cc! demo_user4,123456Dd! demo_user5,123456Ee!
CloudShellの起動
コンソール画面にログインして、画面左下のCloudShellをクリックします。
するとCloudShellが起動します。
次に、CloudShellに先程作成したusers.csvをアップロードします。
アクションボタンから「ファイルのアップロード」を選択します。
最初に作成したusers.csvを選択してアップロードします。
IAMユーザーの作成
ではAWS CLIを使ってIAMユーザーを作成していきます。
次のどちらかの方法で以下のシェルスクリプトを作成します。
- CloudShell上で作成(vim等のテキストエディタ)
- ローカル環境で作成
ローカル環境で作成した場合は、先程と同じようにCloudShellへアップロードしてください。
こちらのファイル名は「ima_user.sh」とします。
#!/bin/zsh while IFS=, read -r username password do echo "Creating user: $username" aws iam create-user --user-name "$username" aws iam create-login-profile --user-name "$username" --password "$password" done < users.csv
ではシェルスクリプトの権限を変更します。
chmod +x ima_user.sh
シェルスクリプトを実行します。
./ima_user.sh
では、これでIAMユーザーが作成されたことを確認します。
問題なくIAMユーザーが作成されています。
それでは、作成したIAMユーザーでログインできることを確認します。
一度サインアウトして、ログイン画面に移ります。
自身のアカウントIDと、csvで設定したユーザー名、パスワードを入力します。
ログインできることを確認します。
所感
CloudFormationもローカル環境のAWS CLIも使えないという状況でしたが、そんな時の救世主がCloudShellでした。
元々AWS CLIがインストールされているということもあり、困った時にパッと使える非常に便利な機能です。
皆さんもパッとAWS CLIで検証したい際は是非使ってみてください。